﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WCS.Infrastructure.Dto.Models.Order
{
    /// <summary>
    /// 订单快照模型实体类
    /// </summary>
    public class OrderSnapshotModel
    {
        /// <summary>
        /// 收款码编号
        /// </summary>
        public string? Code { get; set; }

        /// <summary>
        /// 收款码名称
        /// </summary>
        public string? CodeName { get; set; }

        /// <summary>
        /// 门店编号
        /// </summary>
        public string? StoreCode { get; set; }

        /// <summary>
        /// 门店名称
        /// </summary>
        public string? StoreName { get; set; }


        /// <summary>
        /// 商户编号
        /// </summary>
        public string? MerchantCode { get; set; }

        /// <summary>
        /// 商户名称
        /// </summary>
        public string? MerchantName { get; set; }

        /// <summary>
        /// 协议编号
        /// </summary>
        public string? AgreementCode { get; set; }

        /// <summary>
        /// 协议名称
        /// </summary>
        public string? AgreementName { get; set; }

        /// <summary>
        /// 协议详情列表
        /// </summary>
        public List<AgreementDetail>? AgreementDetails { get; set; } = new List<AgreementDetail>();

        /// <summary>
        /// 分账周期
        /// </summary>
        public int? DividedCycle { get; set; }

        /// <summary>
        /// 结算周期
        /// </summary>
        public int? SettlementCycle { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime SnapshotTime { get; set; }
    }

    /// <summary>
    /// 协议详情
    /// </summary>
    public class AgreementDetail()
    {
        /// <summary>
        /// 名称
        /// </summary>
        public string? Name { get; set; }
        /// <summary>
        /// 手机号
        /// </summary>
        public string? Phone { get; set; }

        /// <summary>
        /// 分账比例
        /// </summary>
        public decimal? Ratio { get; set; }
    }
}
